Audio compression involves the reduction of digital audio data to a smaller size for storage or transmission. Today, audio compression has many commercial applications. For example, audio compression is widely used in consumer electronics devices such as music, game, and digital versatile disk (DVD) players. Audio compression has also been used for distribution of audio data over the Internet, cable, satellite/terrestrial broadcast, and digital television.
Motion Picture Experts Group (MPEG) 2, and 4 Advanced Audio Coding (AAC), published October 2000 and March 2002 respectively, are well known compression standards that have emerged over the recent years. The quantization procedure used by MPEG 2, and 4 AAC can be described as having three major levels, a top level, an intermediate level, and a bottom level. The top level includes a “loop frame” that calls a subordinate “outer loop” at the intermediate level. The outer loop calls an “inner loop” at the bottom level. The quantization procedure iteratively quantizes an input vector and increases a quantizer incrementation size until an output vector can be successfully coded with an available number of bits. After the inner loop is completed, the outer loop checks the distortion of each spectral band. If the allowed distortion is exceeded, the spectral band is amplified and the inner loop is called again. The outer iteration loop controls the quantization noise produced by the quantization of the frequency domain lines within the inner iteration loop. The noise is colored by multiplying the lines within the spectral bands with actual scalefactors prior to quantization.
The calculation of bits required for representing quantized frequency lines and scalefactors is an operation that is frequently used and that requires significant time and computing resources. This process has been found to result in bottlenecks for audio encoding schemes such as MPEG 2, and 4 AAC. Thus, what is needed is a method and apparatus for efficiently searching common scalefactor values during quantization in order to reduce the number of times bit calculations are performed.